using System;
using System.ComponentModel.DataAnnotations;

namespace ERP.EquipmentManage.Dtos
{
    /// <summary>
    /// 更新维修单DTO
    /// </summary>
    public class UpdateRepairDto
    {
        /// <summary>
        /// 维修单名称
        /// </summary>
        [Required(ErrorMessage = "维修单名称不能为空")]
        [StringLength(100, ErrorMessage = "维修单名称长度不能超过100个字符")]
        public string RepairName { get; set; }

        /// <summary>
        /// 设备编号
        /// </summary>
        [Required(ErrorMessage = "设备编号不能为空")]
        [StringLength(50, ErrorMessage = "设备编号长度不能超过50个字符")]
        public string DeviceCode { get; set; }

        /// <summary>
        /// 设备名称
        /// </summary>
        [Required(ErrorMessage = "设备名称不能为空")]
        [StringLength(100, ErrorMessage = "设备名称长度不能超过100个字符")]
        public string DeviceName { get; set; }

        /// <summary>
        /// 报修日期
        /// </summary>
        [Required(ErrorMessage = "报修日期不能为空")]
        public DateTime WarrantyDate { get; set; }

        /// <summary>
        /// 维修日期
        /// </summary>
        public DateTime? RepairDate { get; set; }

        /// <summary>
        /// 验收日期
        /// </summary>
        public DateTime? AcceptanceDate { get; set; }

        /// <summary>
        /// 维修结果
        /// </summary>
        [StringLength(500, ErrorMessage = "维修结果长度不能超过500个字符")]
        public string RepairResults { get; set; }

        /// <summary>
        /// 维修人员
        /// </summary>
        [StringLength(50, ErrorMessage = "维修人员长度不能超过50个字符")]
        public string RepairPersonnel { get; set; }

        /// <summary>
        /// 验收人
        /// </summary>
        [StringLength(50, ErrorMessage = "验收人长度不能超过50个字符")]
        public string AcceptancePerson { get; set; }

        /// <summary>
        /// 单据状态
        /// </summary>
        public int? DocumentStatus { get; set; }
    }
} 